#include <iostream>  
#include <vector>  
  
using namespace std;  
  
vector<int> multiply(vector<int>& poly1, vector<int>& poly2) {  
    int n = poly1.size(), m = poly2.size();  
    vector<int> result(n + m - 1, 0);  // 初始化结果向量为0  
  
    for (int i = 0; i < n; i++) {  
        for (int j = 0; j < m; j++) {  
            result[i + j] += poly1[i] * poly2[j];  // 将两个多项式的系数相乘并累加  
        }  
    }  
  
    return result;  
}  
  
int main() {  
    vector<int> poly1 = {2, 3, 4}, poly2 = {1, 5};  // 两个多项式  
    vector<int> result = multiply(poly1, poly2);  // 相乘  
  
    // 输出结果  
    for (int i = result.size() - 1; i >= 0; i--) {  
        if (result[i] == 0) continue;  
        cout << result[i];  
        if (i > 0) cout << "x^" << i;  
        if (i == result.size() - 1) cout << endl;  
    }  
  
    return 0;  
};